Validating Z Specifications Using the ProBAnimator and Model Checker

نویسندگان

  • Daniel Plagge
  • Michael Leuschel
چکیده

We present the architecture and implementation of the proz tool to validate high-level Z specifications. The tool was integrated into prob, by providing a translation of Z into B and by extending the kernel of prob to accommodate some new syntax and data types. We describe the challenge of going from the tool friendly formalism B to the more specification-oriented formalism Z, and show how many Z specifications can be systematically translated into B. We describe the extensions, such as record types and free types, that had to be added to the kernel to support a large subset of Z. As a side-effect, we provide a way to animate and model check records in prob. By incorporating proz into prob, we have inherited many of the recent extensions developed for B, such as the integration with CSP or the animation of recursive functions. Finally, we present a successful industrial application, which makes use of this fact, and where proz was able to discover several errors in Z specifications containing higher-order recursive functions.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Mutation of Model Checker Specifications for Test Generation and Evaluation

Mutation analysis on model checking specifications is a recent development. This approach mutates a specification, then applies a model checker to compare the mutants with the original specification to automatically generate tests or evaluate coverage. The properties of specification mutation operators have not been explored in depth. We report our work on theoretical and empirical comparison o...

متن کامل

Building a refinement checker for Z

In previous work we have described how refinements can be checked using a temporal logic based model-checker, and how we have built a model-checker for Z by providing a translation of Z into the SAL input language. In this paper we draw these two strands of work together and discuss how we have implemented refinement checking in our Z2SAL toolset. The net effect of this work is that the SAL too...

متن کامل

Proving Temporal Properties of Z Specifications Using Abstraction

This paper presents a systematic approach to proving temporal properties of arbitrary Z specifications. The approach involves (i) transforming the Z specification to an abstract temporal structure (or state transition system), (ii) applying a model checker to the temporal structure, (iii) determining whether the temporal structure is too abstract based on the model checking result and (iv) refi...

متن کامل

Modeling and Verifying Web Service Behaviors Based on Live Sequence Chart Specifications

Web Services have been widely used in Service-Oriented Architecture (SOA) framework. Due to the complexity of interactive behaviors, formal verification plays a critical role in Web services-based application engineering. In this paper, we mainly use Live Sequence Chart Specifications (LSC) to specify the complex behaviors among multiple Web services, and then translate LSC to automata model EL...

متن کامل

Using Abstraction in Model Checking Z Specifications

Z notation is a language used for writing formal specifications of a system. However, tool support for this language is lacking. One such tool that is not generally available is a model checker. Model checking is a method used to verify that a system has certain properties; this is important since it can provide full verification of a finite state system without the user having sophisticated kn...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2007